Optical disc authentication method and apparatus

ABSTRACT

The present invention relates to an optical disc authentication method and apparatus. The method, wherein each disc has a plurality of ways and a plurality of sectors in each way, includes the steps of measuring the quantity of sectors in each of a defined quantity of ways to provide a disc fingerprint comprising way sector quantity values for an original disc and a target disc and authenticating the target disc. The step of authenticating the target disc includes the steps of comparing the target disc fingerprint to the original disc fingerprint to determine a percentage of coinciding way sector quantity values and classifying the target disc according to whether its determined percentage value is above or below a pre-defined percentage threshold value wherein a target disc having a determined percentage value of greater than or equal to the threshold value is classified as an original disc, and a target disc having a determined percentage value of less than the threshold value is classified as an illegally copied disc.

[0001] A portion of the disclosure of this patent document containsmaterial, which is subject to copyright protection. The copyright ownerhas no objection to the facsimile reproduction by anyone of the patentdocument or the patent disclosure, as it appears in the patent andTrademark Office patent files or records, but otherwise reserves allcopyrights whatsoever.

FIELD OF THE INVENTION

[0002] The present Invention relates to digital storage devices, andmore particularly to optical disc authentication.

BACKGROUND OF THE INVENTION

[0003] The popularity of the optical storage disc has risen dramaticallysince its introduction in the early 1980's Optical discs, typicallyreferred to as “CDs” (compact disc), “CD-ROMs” (compact disc read-onlymemory) and more recently “DVDs” (digital versatile disc), haveincreasingly enjoyed wide acceptance within several industries.Manufacturers have been quick to adopt the format, regularly employingoptical discs in the distribution of products such as music and computersoftware due to their ability to provide virtually error-freeduplication.

[0004] However, in large part because of these very advantages,companies are increasingly faced with the illegal copying anddistribution of copyrighted material The problem has only beenexacerbated by an enormous increase in the accessibility of duplicatingequipment due to recent technical advances that have lowered their cost.

[0005] In an effort to discourage illegal copying, methods have beenattempted to differentiate an original disc from an illegally copiedone. The most common technique for optical disc authentication has beento write distinguishing marks on the disc along with the product data.These distinguishing marks are made to be difficult to correctly copyonto a disc, or include information relating to a physical location onthe disc.

[0006] Another technique is to embed an identifier in the appendedparity bytes that are used for detecting and correcting errors in dataframes. Still another technique provides a unique serial number thatsoftware can verify with a password contained within the product data.

[0007] However, these methods have typically required laboriousadditional steps within the mastering process, and lack aformat-insensitive solution.

[0008] For the foregoing reasons, there is a need for an improved methodof optical disc authentication.

SUMMARY OF THE INVENTION

[0009] The present invention is directed to an optical discauthentication method and apparatus. The method, wherein each disc has aplurality of ways and a plurality of sectors in each way, includes thesteps of measuring the quantity of sectors in each of a defined quantityof ways to provide a disc fingerprint comprising way sector quantityvalues for an original disc and a target disc and authenticating thetarget disc.

[0010] The step of authenticating the target disc includes the steps ofcomparing the target disc fingerprint to the original disc fingerprintto determine a percentage of coinciding way sector quantity values andclassifying the target disc according to whether its determinedpercentage value is above or below a pre-defined percentage thresholdvalue, wherein a target disc having a determined percentage value ofgreater than or equal to the threshold value is classified as anoriginal disc, and a target disc having a determined percentage value ofless than the threshold value is classified as an illegally copied disc.

[0011] In an aspect of the present invention, the measuring stepincludes the steps of determining optical disc drive characteristics,collecting sector reading time data and processing the collected data toprovide way sector quantity values.

[0012] In an aspect of the present invention, the optical disc drivecharacteristics are determined by determining cache buffer memory sizeof the disc drive and determining reading speed reduction parameters ofthe disc drive.

[0013] In an aspect of the present invention, the sector reading timedata is collected by filling the cache buffer with blank data andcollecting reading time data in a reading time array from a definedquantity and location of ways on a disc. in an aspect of the presentinvention, the collected data is processed by filtering the data tocompensate for reading errors, determining a common slope from thefiltered data and identifying slopes matching the determined commonslope to ascertain individual ways for the measurement of way sectorquantity values.

[0014] Other aspects and features of the present invention will becomeapparent to these ordinarily skilled in the art upon review of thefollowing description of specific embodiments of the invention inconjunction with the accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] These and other features, aspects, and advantages of the presentinvention will become better understood with regard to the followingdescription, appended claims, and accompanying drawings where:

[0016]FIG. 1a is an overview of an optical disc authentication methodaccording to the present invention;

[0017]FIGS. 1b-1 e show embodiments of the optical disc authenticationmethod according to the present invention;

[0018]FIGS. 2a and 2 b show a flowchart of an optical discauthentication method according to the present invention;

[0019]FIG. 3 shows a reading time array;

[0020]FIG. 4 is a representation of a top view of an optical discshowing a sector reading sequence;

[0021]FIG. 5 is a graph of raw sector reading time data;

[0022]FIG. 6 is a graph of filtered sector reading time data; and

[0023]FIG. 7 shows a sector quantity array.

DETAILED DESCRIPTION OF THE PRESENTLY PREFERRED EMBODIMENT

[0024] The present invention is directed to an optical discauthentication method and apparatus. As shown in FIG. 1a, the method,wherein each disc has a plurality of ways and a plurality of sectors ineach way, includes the steps of measuring the quantity of sectors ineach of a defined quantity of ways to provide a disc fingerprintcomprising way sector quantity values for an original disc and a targetdisc 12 and authenticating the target disc 14.

[0025] The step of authenticating the target disc 14 includes the stepsof comparing the target disc fingerprint to the original discfingerprint to determine a percentage of coinciding way sector quantityvalues 16 and classifying the target disc according to whether itsdetermined percentage value is above or below a pre-defined percentagethreshold value, wherein a target disc having a determined percentagevalue of greater than or equal to the threshold value is classified asan original disc, and a target disc having a determined percentage valueof less than the threshold value is classified as an illegally copieddisc 18.

[0026] As shown in FIG. 1b, in an embodiment of the present invention,the measuring step 12 includes the steps of determining optical discdrive characteristics 20, collecting sector reading time data 22 andprocessing the collected data to provide way sector quantity values 24.

[0027] As shown in FIG. 1c, in an embodiment of the present invention,the optical disc drive characteristics are determined by determiningcache buffer memory size of the disc drive 26 and determining readingspeed reduction parameters of the disc drive 28.

[0028] As shown in FIG. 1d, in an embodiment of the present invention,the sector reading time data is collected by filling the cache bufferwith blank data 30 and collecting reading time data in a reading timearray from a defined quantity and location of ways on a disc 32.

[0029] As shown in FIG. 1e, in an embodiment of the present invention,the collected data is processed by filtering the data to compensate forreading errors 34, determining a common slope from the filtered data 36and identifying slopes matching the determined common slope to ascertainindividual ways for the measurement of way sector quantity values 38.

[0030] Data is recorded on an optical disc in a process called“mastering”. The first sage in the mastering process involves therecording of product data onto an original disc known in the industry asa “gold master”. The data is recorded on the disc in the form of aspiral path called a “trace” that starts from the inside edge of thedisc and winds its way towards the outer edge and is made up of sectorscontaining “pits” representing “1s” and “hills” representing “0s”.

[0031] A specialized decoding machine copies the data from the goldmaster to a “master” disc, The master disc is then electrochemicallyplated with a thick layer of metal that, when separated from the master,provides a negative of the master known as a “stamper.” Stampers arethen used for disc duplication.

[0032] Disc duplicates have geometric structures that are virtuallyidentical to the geometric structures of their respective mastersHowever, duplicates created from different masters differ due to sectorwriting deviations on the masters. These deviations are created byfactors such as noise, loss of accuracy in laser placement control orchange in disc rotation speed directly affecting the division of dataInto sectors.

[0033] These deviations take the form of a physical displacement of thepits and hills along the length of the trace resulting in a deviation inthe physical length of the sector, so that even two master discs withidentical binary information and produced on the same machine from thesame gold master are different. This displacement can be especiallypronounced in certain portions of the master disc, particularly at itsouter edge due to error accumulation.

[0034] Therefore, since a direct relationship exists between a sector'sreading time and its physical length, the invention collects readingtime data to measure differences in sector lengths.

[0035] In an embodiment of the present invention, cache buffer memorysize is determined from a cache size algorithm 42, shown in Table 1. Thecache size algorithm 42 measures cache buffer memory size in relativesingle sector units. Cache buffer memory is contained in a memory chipinstalled on the logic board and serves as a storage area for data readyto be sent to the computer's microprocessor. TABLE 1 CACHE_SIZE=100;ReadSector(0,1,NULL); Read Sector(0,1,&time); cachetime=time;for(i=CACHE_SIZE;i>0;i=2) { ReadSector(0,i,NULL); ReadSector(0,1,&time);if (time<2*cachetime)break; } //Total cache size cachesize=i;

[0036] Since the buffer would alter the reading time results if readingtime data were allowed to run through it, while reading the cache buffermemory is filled with blank data to allow reading time data to bypass itto provide a direct “flow-through” of information enabling reading timemeasurement in real time.

[0037] As well, since higher speeds tend to result in more errors,drives employ reading speed reduction to help reduce reading errors.Since parameters differ between drives, to compensate for alteredresults that may occur due to differing drive parameters, a readingspeed reduction parameter algorithm is employed in the reading speedreduction parameters determination step 26 to determine the drive'sreading speed reduction parameters.

[0038] In the data collection step 20 a “reading time algorithm” Isemployed for populating a “reading time array” 44, shown in FIG. 3, withsector reading time data. The reading time array includes a sectornumber column 46 and a reading time column 48.

[0039] Since authentication accuracy is directly proportional to thequantity of sectors tested, the more sectors that are tested the moreaccurate the result. In compromising between speed and accuracy, it hasbeen found through experimentation that an appropriate quantity of testsectors is at least about 1000, translating into roughly 50 turns or“ways”, a way being defined as one complete turn of the trace.

[0040] In the data collection step 20, a “base sector” is designated andreading time measurements are taken from the base sector to eachsubsequent test sector in sequence towards the disc center. Reading timeis defined as the sum of two time elements; the time it takes for thehead to move from the base sector to a sequential sector and the time ittakes to read the sequential sector. For example, as shown in FIG. 4, adisc having a base sector designated as Sector 18 or S18 would have areading sequence of S18,S17; S18,S16; S18,S15 . . . S18,S01.

[0041] As shown in FIG. 5, the graphed raw data from the reading timearray appears as a zigzagged line, the F-axis representing reading timesand the Z axis representing sector numbers. The line contains erraticpeak-anomalies or “leaps” 50 that appear an the right-hand slopes of theline reflecting sector-reading errors caused by factors such as discdamage.

[0042] To improve accuracy, the data Is filtered to compensate for thesefactors using a filtering algorithm 52 shown in Table 2. The algorithmremoves anomalies between the upper and lower ends of the right handslopes of the line so that it no longer containing leaps as shown inFIG. 6. TABLE 2 Y_(i−1)<Y_(i)>Y_(i+i); where Y_(i−1)>Y_(i+1)for(i=1;i<SEEK_SECTOR-1;i++) {if(time[i−1]<time[i]&&time[i+1]<time[i−1])time[i]=(time[i−]+time[i+2])/2; } where: i is used for tracking the data Yi representsthe raw data

[0043] Once the data has been filtered, individual ways are discerned bydetermining a common slope for the majority of peaks employing a commonslope algorithm 54 shown in Table 3. TABLE 3 double k=0; int count=0;for(i=0;i<SEEK_SECTOR-1;i++) { if(time[i+1]<time[i]) {k+=time[i+1]−time[i]; count++; } } k =k / count; where: k represents theslope of the curve

[0044] Employing a matching slope algorithm 58 shown in Table 4, thereading time fields 56 of the reading time array 44 are parsed toidentify slopes matching the determined common slope 46 to ascertainindividual ways. TABLE 4 for(i=0;1<SEEK_SECTOR−2;1++) { doublepp=(time[i+2]−time[i])/2; if(fabs(1−pp/k)>0.2)continue;for(j=i+3;j<SEEK_SECTOR;j++) { if(time[j]<time[j+1])break; doublepz=(time[j]−time[i])/(j−1); if(fabs(1−pz/k)>0.2)break; pp=pz; }//forming the line equation line.k=pp; line.b=−pp*i+time[i]; i=j;//adding a line to the base of lines Add(line); } where: i representsraw data j is for tracking the sequence of the data

[0045] The data stored in the reading time array 44 is then utilized formeasuring the quantity of sectors in each way employing a sectorquantity algorithm 60 shown in Table 5. TABLE 5 startsector =START_SECTOR//0x40000 for(int i=0;i<1000;i++) {ReadSector(startsector,1,buffer,tmp);ReadSector(startsector-i-1,1,buffer,time[i]); } where: i represents rawdata

[0046] As shown in FIG. 7, measured sector quantity data is stored in asector quantity array 62, which includes a way number column 64 and asector quantity column 66, The sector quantity array 62 is used forestablishing a pattern or “fingerprint” for the disc. To determine atarget disc's authenticity, its fingerprint Is compared to a fingerprintof an original disc provided in the form of a CD-Key.

[0047] To allow for differences that occur in duplicates due to wear andtear on stampers during the printing process, the optimal permissiblepercentage differentiation between disc fingerprints was establishedduring experimentation to be less than or equal to about 30 percent.This “threshold value” provides a compromise between allowing forstamper wear and tear and detecting as many illegally copied discs aspossible.

[0048] Therefore, taking into consideration the threshold value of 30percent, the target disc should be considered to be an original disc ifthe percentage of coincidence is established to be greater than or equalto about 70 percent. Conversely, the target disc should be considered tobe a counterfeit copy if the percentage of coincidence is established tobe less than about 70 percent.

[0049] The invention uses a standard CD-ROM drive to exploit thedeviations that occur due to differences between drives when discs areillegally copied.

[0050] In addition to regular CDs, the invention can be implemented forCD-Recordable (CD-R) discs since CD-Rs are pre-marked with empty sectorsto enable proper synchronization of data during the final recordingstage.

[0051] CD-R discs are made in batches produced from the same master,therefore having the same geometric structure. The mastering processdetermines the structure of a CD-R in the same manner as regular CDs,pre-determining the physical length of sectors even though product datahas not yet been recorded so that even if data is burned onto separateCD-R discs using different equipment, as long as the discs are from thesame batch, the differences that would typically exist either would notbe detected using a standard drive or would not reach the 30% threshold.

[0052] In an embodiment of the present invention, to protect anon-recordable optical disc using the authentication method, a CDpublisher provides core data locally and connects remotely to a“protection” website to run a remote copy of a protection program on thepublisher's computer. The “core” data is encrypted and a protective“shell” added surrounding the core data. CD's are then made and afingerprint is provided in the form of a CD-Key that is called by theshell during authentication.

[0053] In an embodiment of the present invention, to protect arecordable optical disc using the authentication method, a CD publisherprovides core data locally and connects remotely to the protectionwebsite to run a remote copy of the protection program an thepublisher's computer. A fingerprint is determined for the disc andprovided to the publisher in the form of a CD-Key. The publisher thenstores the disc and the provided CD-Key with other CD-Rs from the samebatch for later use. When the publisher requires copies, they re-connectto the protection website to have the data encrypted and a protectiveshell added to the core data.

[0054] In an embodiment of the present invention, the core data isencrypted and the shell added in the same session as performing thefingerprinting. The publisher can then burn customer-ordered copies ontorecordable discs from the same batch when needed, providing the CD-Keywith the disc delivered to the customer.

[0055] Prior art disc protection methods entail slow and laborious stepsemploying expensive, high-precision equipment. The invention can providea disc fingerprint using common, everyday equipment such as a CD-ROMdrive-equipped personal computer.

[0056] As well, because the difference between disc formats lies in thedata within the sectors and not in the way sectors are written to thedisc, the invention provides a format-insensitive method of optical discauthentication.

[0057] In an embodiment of the present invention, the pre-definedlocation of ways is the outside edge of the trace to increase accuracysince differences are larger in this location due to error accumulation.

[0058] Although the present Invention has been described in considerabledetail with reference to certain preferred embodiments thereof, otherversions are possible. Therefore, the spirit and scope of the appendedclaims should not be limited to the description of the preferredembodiments contained herein.

What is claimed is:
 1. An optical disc authentication method, each dischaving a plurality of ways and a plurality of sectors in each way, themethod comprising the steps of: (i) measuring the quantity of sectors ineach of a defined quantity of ways to provide a disc fingerprintcomprising way sector quantity values for an original disc and a targetdisc; and (ii) authenticating the target disc by: a) comparing thetarget disc fingerprint to the original disc fingerprint to determine apercentage of coinciding way sector quantity values; and b) classifyingthe target disc according to whether its determined percentage value isabove or below a pre-defined percentage threshold value, wherein atarget disc having a determined percentage value of greater than orequal to the threshold value is classified as an original disc, and atarget disc having a determined percentage value of less than thethreshold value is classified as an illegally copied disc.
 2. The methodaccording to claim 1, the measuring step includes the steps of: (i)determining optical disc drive characteristics; (ii) collecting sectorreading time data; and (iii) processing the collected data to provideway sector quantity values.
 3. The method according to claim 2, whereinthe optical disc drive characteristics are determined by: (i)determining cache buffer memory size of the disc drive; and (ii)determining reading speed reduction parameters of the disc drive.
 4. Themethod according to claim 2, wherein the sector reading time data iscollected by: (i) filling the cache buffer with blank data; and (ii)collecting reading time data in a reading time array from a definedquantity and location of ways on a disc.
 5. The method according toclaim 2, wherein the collected data is processed by: (i) filtering thedata to compensate for reading errors; (ii) determining a common slopefrom the filtered data; and (iii) identifying slopes matching thedetermined common slope to ascertain individual ways for the measurementof way sector quantity values.
 6. The method according to claim 1,wherein the original disc fingerprint is provided in the form of aCD-Key.
 7. The method according to claim 4, wherein the defined locationof ways is the outside edge of the trace to increase accuracy.
 8. hemethod according to claim 7, wherein a file is added to product data,and the file of sufficient size to ensure disc fingerprinting isperformed at the outside edge of the disc to increase accuracy.
 9. Themethod according to claim 8, wherein the file is empty.
 10. The methodaccording to claim 1, wherein the pre-defined percentage threshold valueis about
 70. 11. The method according to claim 1, wherein the definedquantity of ways tested is at least about
 50. 12. The method accordingto claim 1, wherein product data is encrypted.
 13. The method accordingto claim 1, wherein a protective shell is added to product data thatrequests a correct CD-Key to unlock the shell for access to the productdata.
 14. The method according to claim 1, wherein one or more steps areperformed remotely.
 15. The method according to claim 1, wherein arecordable disc is used.
 16. The method according to claim 15, whereinthe recordable disc is blank to limit the process to discfingerprinting, enabling adding of product data at a later time.
 17. Anoptical disc authentication apparatus, each disc having a plurality ofways and a plurality of sectors in each way, the apparatus comprising:means for measuring the quantity of sectors in each of a definedquantity of ways to provide a disc fingerprint comprising way sectorquantity values for an original disc and a target disc; and means forauthenticating the target disc including: means for comparing the targetdisc fingerprint to the original disc fingerprint to determine apercentage of coinciding way sector quantity values; and means forclassifying the target disc according to whether its determinedpercentage value is above or below a pre-defined percentage thresholdvalue, wherein a target disc having a determined percentage value ofgreater than or equal to the threshold value is classified as anoriginal disc, and a target disc having a determined percentage value ofless than the threshold value is classified as an illegally copied disc.18. The apparatus according to claim 17, wherein the measuring meansincludes: means for determining optical disc drive characteristics;means for collecting sector reading time data; and means for processingthe collected data to provide way sector quantity values.
 19. Theapparatus according to claim 18, wherein the optical disc drivecharacteristics are determined by: means for determining cache buffermemory size of the disc drive; and means for determining reading speedreduction parameters of the disc drive.
 20. The apparatus according toclaim 18, wherein the sector reading time data is collected by: meansfor filling the cache buffer with blank data; and means for collectingreading time data in a reading time array from a defined quantity andlocation of ways on a disc.
 21. The apparatus according to claim 18,wherein the collected data is processed by: means for filtering the datato compensate for reading errors; means for determining a common slopefrom the filtered data; and means for identifying slopes matching thedetermined common slope to ascertain individual ways for the measurementof way sector quantity values.
 22. The apparatus according to claim 17,wherein the original disc fingerprint is provided in the form of aCD-Key.
 23. The apparatus according to claim 20, wherein the definedlocation of ways is the outside edge of the trace to increase accuracy.24. The apparatus according to claim 23, wherein a file is added toproduct data, and the file of sufficient size to ensure discfingerprinting is performed at the outside edge of the disc to increaseaccuracy.
 25. The apparatus according to claim 24, wherein the file isempty.
 26. The apparatus according to claim 17, wherein the pre-definedpercentage threshold value is about
 70. 27. The apparatus according toclaim 17, wherein the determined quantity of ways tested is at leastabout
 50. 28. The apparatus according to claim 17, wherein product datais encrypted.
 29. The apparatus according to claim 17, wherein aprotective shell is added to product data that requests a correct CD-Keyto unlock the shell for access to the product data.
 30. The apparatusaccording to claim 17, wherein one or more elements are performedremotely.
 31. The apparatus according to claim 17, wherein a recordabledisc is used.
 32. The apparatus according to claim 31, wherein therecordable disc is blank to limit the process to disc fingerprinting,enabling adding of product data at a later time.
 33. A storage mediumreadable by a computer encoding a computer process to provide an opticaldisc authentication method, each disc having a plurality of ways and aplurality of sectors in each way, the computer process comprising: aprocessing portion for measuring the quantity of sectors in each of adefined quantity of ways to provide a disc fingerprint comprising waysector quantity values for an original disc and a target disc; and aprocessing portion for authenticating the target disc including: aprocessing portion for comparing the target disc fingerprint to theoriginal disc fingerprint to determine a percentage of coinciding waysector quantity values; and a processing portion for classifying thetarget disc according to whether its determined percentage value isabove or below a pre-defined percentage threshold value, wherein atarget disc having a determined percentage value of greater than orequal to the threshold value is classified as an original disc, and atarget disc having a determined percentage value of less than thethreshold value is classified as an illegally copied disc.
 34. Themethod according to claim 33, wherein the measuring processing portionincludes: a processing portion for determining optical disc drivecharacteristics; a processing portion for collecting sector reading timedata; and a processing portion for processing the collected data toprovide way sector quantity values.
 35. The method according to claim34, wherein the optical disc drive characteristics are determined by: aprocessing portion for determining cache buffer memory size of the discdrive; and a processing portion for determining reading speed reductionparameters of the disc drive.
 36. The method according to claim 34,wherein the sector reading time data is collected by: a processingportion for filling the cache buffer with blank data; and a processingportion for collecting reading time data in a reading time array from adefined quantity and location of ways on a disc.
 37. The methodaccording to claim 34, wherein the collected data is processed by: aprocessing portion for filtering the data to compensate for readingerrors; a processing portion for determining a common slope from thefiltered data; and a processing portion for identifying slopes matchingthe determined common slope to ascertain individual ways for themeasurement of way sector quantity values.
 38. The method according toclaim 33, wherein the original disc fingerprint is provided In the formof a CD-Key.
 39. The method according to claim 36, wherein the definedlocation of ways is the outside edge of the trace to increase accuracy.40. The method according to claim 39, wherein a file is added to productdata, and the file of sufficient size to ensure disc fingerprinting isperformed at the outside edge of the disc to increase accuracy.
 41. Themethod according to claim 40, wherein the file is empty.
 42. The methodaccording to claim 33, wherein the pre-defined percentage thresholdvalue is about
 70. 43. The method according to claim 33, wherein thedetermined quantity of ways tested is at least about
 50. 44. The methodaccording to claim 33, wherein product data is encrypted.
 45. The methodaccording to claim 33, wherein a protective shell is added to productdata that requests a correct CD-Key to unlock the shell for access tothe product data.
 46. The method according to claim 33, wherein one ormore steps are performed remotely.
 47. The method according to claim 33,wherein a recordable disc is used.
 48. The method according to claim 47,wherein the recordable disc is blank to limit the process to discfingerprinting, enabling adding of product data at a later time.